package Or

//
//import (
//	"db2s/outPut"
//	"sync"
//)
//
//type SlowLogEntry struct {
//	Timestamp    string
//	User         string
//	Schema       string
//	LastErrno    string
//	QueryTime    float64
//	LockTime     float64
//	RowsSent     uint64
//	RowsExamined uint64
//	RowsAffected uint64
//	BytesSent    uint64
//	Query        string
//}
//type ReadFile struct {
//	RowsSplistFay string   `json:"rowsS"`
//	CreateFileName      []string `json:"fileName"`
//	Curry         int      `json:"curry"`
//}
//type HotSql struct {
//	StartTime string   `json:"startTime"` //按照开始时间进行筛选
//	EndTime   string   `json:"endTime"`   //按照结束时间进行筛选
//	User      string   `json:"user"`      //按照用户进行筛选
//	Table     string   `json:"table"`     //库名+表名
//	ExecTime  int      `json:"execTime"`
//	File      ReadFile `json:"file"`
//}
//
//func (or HotSql) getSlowLog() (fileMearge chan *string) {
//	var (
//		wg sync.WaitGroup
//	)
//	fileMearge = make(chan *string, 10000)
//	go func() {
//		for _, v := range or.File.CreateFileName {
//			wg.Add(1)
//			go func(file string) {
//				defer wg.Done()
//				ff := outPut.FileOut("text", map[string]any{"fileName": file, "rows": or.File.RowsSplistFay, "curry": or.File.Curry})
//				readBuff := ff.Read().(chan *string)
//				for {
//					select {
//					case read, ok := <-readBuff:
//						if !ok {
//							return
//						}
//						if len(*read) == 0 {
//							continue
//						}
//						fileMearge <- read
//					}
//				}
//			}(v)
//		}
//		wg.Wait()
//		close(fileMearge)
//	}()
//	return
//}
//func (or HotSql) parseSlowLogEntry(line string) *SlowLogEntry {
//	return &SlowLogEntry{}
//}
//
//// ReadFileAble read hot sql in file
//func (or HotSql) ReadFileAble() any {
//	return nil
//}
//
//// ReadTableAble read hot sql in file
//func (or HotSql) ReadTableAble() any {
//	return nil
//}
//
//func (or HotSql) PlayBackAble(v any) any {
//	return nil
//}
